A Compiler Design for the Agent-Based Programming Language
نویسندگان
چکیده
In this paper, we introduce a prototype compiler for the Agentbased Programming Language (APL) using the Belief-DesireIntention (BDI) model. The compiler we developed can translate an agent-based program written in APL into the Java byte code, which is executable on the Java Virtual Machine (JVM). This paper proposes a simple syntax for Agent-based Programming Language (APL). APL is designed based on the BDI model, which is a natural way to describe the behaviors of an intelligent agent. By using the associated database and reflection concepts, the APL can use different intentions intelligently and dynamically. This work shows how nicely and naturally the APL programming language can represent intelligent software agents and how we can translate the APL program into the Java byte code. In this work, we use the Belief-Plan mapping table and Java reflection feature to implement dynamic linking which makes it possible for APL to link to different code fragments at runtime without recompiling the APL source code. This feature of APL makes the language unique and it may change the way of programming.
منابع مشابه
Method integration: An approach to develop agent oriented methodologies
Agent oriented software engineering (AOSE) is an emerging field in computer science and proposes some systematic ideas for multi agent systems analysis, implementation and maintenance. Despite the various methodologies introduced in the agent-oriented software engineering, the main challenges are defects in different aspects of methodologies. According to the defects resulted from weaknesses ...
متن کاملApplication Driven Software Methodology for Automatic Compiler Generation
Software tools were created in order to ease the compiler generation task. But the demand for new programming languages and thus for new compilers grows with the domain of computer applications. The new approaches for language design and compiler implementation, such as those spawned by the domain specific languages, rely on programming and are not easily followed by problem experts. On the oth...
متن کاملAData ow-basedMassivelyParallelProgrammingLanguage "V" and Its Implementation on A Stock Parallel Machine
We propose a data BLOCKINow-based massively parallel programming language, called \V," which would minimize the diculties in writing massively parallel programs. The language V has both merits of functional programming and object-based programming. Our starting point is a data BLOCKINow-based functional programming language, called \Valid," which we have developed so far, because functional pro...
متن کاملTeaching Compiler Development to Undergraduates Using a Template Based Approach
Compiler Design remains one of the most dreaded courses in any undergraduate Computer Science curriculum, due in part to the complexity and the breadth of the material covered in a typical 14-15 week semester time frame. The situation is further complicated by the fact that most undergraduates have never implemented a large enough software package that is needed for a working compiler, and to d...
متن کاملApplication of Case-Based Teaching and Learning in Compiler Design Course
Compiler design is a course that discusses ideas used in construction of programming language compilers. Students learn how a program written in high level programming language and designed for humans understanding is systematically converted into low level assembly language understood by machines. We propose and implement a Case-based and Project-based Learning environment for teaching importa...
متن کامل